package edu.object_oriented.interfacePra;

public interface InterfaceA {
    public static void main(String[] args) {
        E e = new D();
        B b = new D();
    }
}

interface B{
    void methodB();
}
interface C{
    void methodC();
}
class E{

}
//多实现   如果一个类 即继承  又实现   先继承  后 实现
class D extends E implements B,C{

    @Override
    public void methodB() {
        System.out.println("B");
    }

    @Override
    public void methodC() {
        System.out.println("C");
    }
}
//抽象类 实现 接口 不用重写
abstract class F implements B,C{
    abstract void methodF();
}
//具体类继承抽象类时，需要重写抽象类的抽象方法与其实现接口的抽象方法
class G extends F{
    @Override
    public void methodB() {

    }

    @Override
    public void methodC() {

    }

    @Override
    void methodF() {

    }
}